這一篇接續16.移轉 Aras PLM大小事-系統使用者與角色
起初是想要將公司內的BPM專案請購的表單移轉到PLM專案管理
把電子表單合併起來,但並非取代BPM功能
因此第一步是將角色的簽核主管快速設定
1.設定角色10個主管層級,參考BPM設計方式
新增角色上的十個欄位,如下方cn_level0_manager對應董事長級
case "董事長級":
dtRow["cn_level0_manager"] = manager;
break;
case "總經理級":
dtRow["cn_level1_manager"] = manager;
break;
case "BU副總經理":
dtRow["cn_level2_manager"] = manager;
break;
case "集團主管":
dtRow["cn_level3_manager"] = manager;
break;
case "處長/協理/副總級":
dtRow["cn_level4_manager"] = manager;
break;
case "資深經理級":
dtRow["cn_level5_manager"] = manager;
break;
case "經理級":
dtRow["cn_level6_manager"] = manager;
break;
case "副理級":
dtRow["cn_level7_manager"] = manager;
break;
case "課長級":
dtRow["cn_level8_manager"] = manager;
break;
case "組長級":
dtRow["cn_level9_manager"] = manager;
break;
2.角色與BPM的角色名稱需要維護一個Key值,如工號、英文名、中文名
這裡我選擇用中文名,且簡中必須翻譯繁中
JPCChineseConverter.SimpleConvert jpc_convert = new JPCChineseConverter.SimpleConvert(); occu = jpc_convert.SimpleToTraditional(occu);//occu文字一律翻譯繁體
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;
namespace JPCChineseConverter
{
public class SimpleConvert
{
public string SimpleToTraditional(string simpleStr)
{
return Convert(simpleStr, "Big5");
}
private string Convert(string SourceString, string Language)
{
string newString = string.Empty;
switch (Language)
{
case "Big5":
newString = ChineseConverter.Convert(SourceString, ChineseConversionDirection.SimplifiedToTraditional);
break;
case "GB2312":
newString = ChineseConverter.Convert(SourceString, ChineseConversionDirection.TraditionalToSimplified);
break;
default:
newString = SourceString;
break;
}
return newString;
}
}
}
3.準備你的連線方式,必須要將Oracle.ManagedDataAccess元件加入到method-config.xml
<name>$(binpath)/Oracle.ManagedDataAccess.dll</name>
4.用Aras的Method確認連線
public DataSet RunSql(string sql)
{
try
{
using (Oracle.ManagedDataAccess.Client.OracleConnection conn = new Oracle.ManagedDataAccess.Client.OracleConnection(connectionStr))
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
Oracle.ManagedDataAccess.Client.OracleCommand cmd = new Oracle.ManagedDataAccess.Client.OracleCommand(sql, conn);
Oracle.ManagedDataAccess.Client.OracleDataAdapter DataAdapter = new Oracle.ManagedDataAccess.Client.OracleDataAdapter();
DataAdapter.SelectCommand = cmd;
DataSet ds = new DataSet();
DataAdapter.Fill(ds);
return ds;
}
}
catch (Exception ex)
{
error_log = ex.ToString();
return null;
}
}